home *** CD-ROM | disk | FTP | other *** search
/ The Atari Compendium / The Atari Compendium (Toad Computers) (1994).iso / files / prgtools / langs / sozo2 / scsrc20.lzh / LD.LZH / SYMS.H < prev    next >
Encoding:
C/C++ Source or Header  |  1991-02-22  |  1.2 KB  |  60 lines

  1.  
  2. /*
  3.  * Copyright (c) 1991 by Sozobon, Limited.  Author: Johann Ruegg
  4.  *
  5.  * Permission is granted to anyone to use this software for any purpose
  6.  * on any computer system, and to redistribute it freely, with the
  7.  * following restrictions:
  8.  * 1) No charge may be made other than reasonable charges for reproduction.
  9.  * 2) Modified versions must be clearly marked as such.
  10.  * 3) The authors are not responsible for any harmful consequences
  11.  *    of using this software, even if they result from defects in it.
  12.  */
  13.  
  14. struct sym {
  15.     char name[8];
  16.     unsigned char flags;
  17.     unsigned char mark;
  18.     long value;
  19. };
  20.  
  21. #ifdef UNIXHOST
  22. struct fsym {
  23.     char name[8];
  24.     unsigned char flags, mark;
  25.     short value[2];
  26. };
  27. #endif
  28.  
  29. #define F_TEXT        2
  30. #define F_DATA        4
  31. #define F_BSS        1
  32. #define F_COMM        8
  33. #define F_GLBL        0x20
  34. #define F_DEF        0x80
  35.  
  36. #define EXTREF        (F_DEF|F_COMM)
  37. #define COMMDEF        (F_DEF|F_GLBL|F_COMM)
  38.  
  39. #define SYMSIZE        14
  40.  
  41. #define CHUNKMAX    (1000/SYMSIZE)
  42.  
  43. struct symchunk {
  44.     struct symchunk *next;
  45.     int nsyms;
  46.     struct sym s[1];
  47. };
  48.  
  49. #define XNAME    "SozobonX"
  50. #define XFLAGS    0x42
  51. #define XVALUE    0x87654321
  52.  
  53. struct sinfo {
  54.     struct sinfo *next;
  55.     unsigned char flags, mark;
  56.     long value;
  57.     struct oinfo *obj;
  58.     char name[1];
  59. };
  60.